home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 1998 August / PC Plus SuperCD 50b Issue 142 (CD142b) (August 1998).iso / Adventure.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-05-03  |  3.7 KB  |  105 lines

  1. import java.io.Serializable;
  2. import java.util.Vector;
  3.  
  4. public class Adventure implements Serializable, AdventureConstants {
  5.    private Vector map = new Vector();
  6.    private AdvUtils Utils = new AdvUtils();
  7.    private Person player;
  8.  
  9.    Vector getmap() {
  10.       return this.map;
  11.    }
  12.  
  13.    void setmap(Vector var1) {
  14.       this.map = var1;
  15.    }
  16.  
  17.    Person getplayer() {
  18.       return this.player;
  19.    }
  20.  
  21.    void setplayer(Person var1) {
  22.       this.player = var1;
  23.    }
  24.  
  25.    void movePersonTo(Person var1, Room var2) {
  26.       var1.setroom(var2);
  27.    }
  28.  
  29.    int moveTo(Person var1, int var2) {
  30.       Room var3 = var1.getroom();
  31.       int var4;
  32.       switch (var2) {
  33.          case 1:
  34.             var4 = var3.getn();
  35.             break;
  36.          case 2:
  37.             var4 = var3.gets();
  38.             break;
  39.          case 3:
  40.             var4 = var3.gete();
  41.             break;
  42.          case 4:
  43.             var4 = var3.getw();
  44.             break;
  45.          default:
  46.             var4 = -1;
  47.       }
  48.  
  49.       if (var4 > -1) {
  50.          this.movePersonTo(var1, (Room)this.map.elementAt(var4));
  51.       }
  52.  
  53.       return var4;
  54.    }
  55.  
  56.    String movePlayerTo(int var1) {
  57.       return this.moveTo(this.player, var1) == -1 ? "No Exit!" : "";
  58.    }
  59.  
  60.    String takeOb(String var1) {
  61.       Vector var2 = this.player.getthings();
  62.       Vector var3 = this.player.getroom().getthings();
  63.       int var4 = this.Utils.ObNameAtIndex(var1, var3);
  64.       if (var1.equals("")) {
  65.          return "I don't know which thing you want to take!";
  66.       } else if (var4 == -1) {
  67.          return "There is no " + var1 + " here!";
  68.       } else {
  69.          this.Utils.TransferOb(var3.elementAt(var4), var3, var2);
  70.          return var1 + " taken!";
  71.       }
  72.    }
  73.  
  74.    String dropOb(String var1) {
  75.       Vector var2 = this.player.getthings();
  76.       Vector var3 = this.player.getroom().getthings();
  77.       int var4 = this.Utils.ObNameAtIndex(var1, var2);
  78.       if (var1.equals("")) {
  79.          return "I don't know which thing you want to drop!";
  80.       } else if (var4 == -1) {
  81.          return "You haven't got the " + var1 + "!";
  82.       } else {
  83.          this.Utils.TransferOb(var2.elementAt(var4), var2, var3);
  84.          return var1 + " dropped!";
  85.       }
  86.    }
  87.  
  88.    Adventure() {
  89.       this.map.addElement(new Room("room0, West of House", "An open field west of a white house", -1, 2, -1, 1));
  90.       this.map.addElement(new Room("room1, White House", "A white house in the Mexican style", -1, -1, 0, -1));
  91.       this.map.addElement(new Room("room2, Gold room", "A golden room hung with rich tapestries", 0, 4, -1, 3));
  92.       this.map.addElement(new Room("room3, Troll room", "A dank, evil-smelling dungeon", -1, 5, 2, -1));
  93.       this.map.addElement(new Room("room4, Dark cave", "It's too dark to see anything!", 2, -1, -1, 5));
  94.       this.map.addElement(new Room("room5, Orchard", "A sweetly-scented orchard", 3, -1, 4, -1));
  95.       ((Room)this.map.elementAt(0)).addthing(new Thing("Sword", "An Elvish sword of great antiquity"));
  96.       ((Room)this.map.elementAt(0)).addthing(new Thing("Bubblegum", "A pink, sticky, dried-up blob"));
  97.       ((Room)this.map.elementAt(0)).addthing(new Thing("Dagger", "A blood-stained dagger"));
  98.       ((Room)this.map.elementAt(3)).addthing(new Thing("Chewing gum", "A grey, sticky, dried-up blob"));
  99.       ((Room)this.map.elementAt(5)).addthing(new Thing("Fluff", "Some pocket fluff"));
  100.       ((Room)this.map.elementAt(5)).addthing(new Thing("Coin", "A silver sixpenny bit"));
  101.       ((Room)this.map.elementAt(5)).addthing(new Thing("Pot of noodles", "A vaguely inedible-looking delicacy"));
  102.       this.player = new Person((Room)this.map.elementAt(0));
  103.    }
  104. }
  105.